package com.atde._01_principle.singleresponsibility;


/**
 * @BelongsProject: hsp_java_design_mode
 * @BelongsPackage: com.atde.principle.singleresponsibility
 * @Author: Del
 * @CreateTime: 2025-04-11  11:04
 * @Description: 单一职责原则演示 03
 *  1. 这种修改方法没有对原来的类做修改，而是新建了一个类，所以符合单一职责原则
 *  2. 这里虽然没有在类的这个级别上遵守单一职责原则，但是在方法级别上遵守了单一职责原则
 *
 *  单一职责原则的注意事项和细节
 *   1）降低类的复杂度，一个类只负责一项职责
 *   2）提高了类的可读性，可维护性
 *   3）降低变更引起的风险
 *   4）通常情况下，我们应当遵守单一职责原则，只有逻辑足够简单，才可以在代码级别违法单一职责原则；
 *     在类中方法数量足够少，可以在方法级别保持单一职责原则
 * @Version: 1.0
 */
public class SingleResponsibility03 {


    public static void main(String[] args) {
        VehicleA vehicleA = new VehicleA();
        vehicleA.run("摩托车");
        vehicleA.runWater("轮船");
        vehicleA.runAir("飞机");
    }


}

class VehicleA {
    public void run(String vehicle) {
        System.out.println(vehicle + "在公路上跑...");
    }

    public void runWater(String vehicle) {
        System.out.println(vehicle + "在水上跑...");
    }

    public void runAir(String vehicle) {
        System.out.println(vehicle + "在天上跑...");
    }
}
